#include <REGX52.H>
// 延时函数
void Delayxms(int x)		//@12.000MHz
{
	unsigned char i, j;
	while(x)
	{
		i = 2;
		j = 239;
		do
		{
			while (--j);
		} while (--i);
		x--;
	}

}


// 需求：使用按键，以二进制的形式显示
void main()
{
	// LED P2 寄存器控制
	// P2_0 --> 0-亮 1-灭
	int num = 1;
	while(1)
	{
		
			// 按下
			if(P3_1 == 0)
			{
				//避免按键抖动，加入延时函数
				Delayxms(20);
				while(P3_1 == 0);
				// 松开
				Delayxms(20);
				
				// 按一次按键，处理LED，如下变化
				// 1111 1110  ~1 
				// 1111 1101  ~2 
				// 1111 1100  ~3
				P2 = ~num;
				// 闪烁50ms
				Delayxms(500);
				num++;
				P2 = 0xff;
				if(num == 0xff)
				{
					num = 1;
				}
				
			}
	    
	}
}